FEM Solver/de

Vorwort

Diese Seite sammelt Informationen über die vom Arbeitsbereich FEM verwendeten Finite-Elemente-Löser. Die Schnittstelle zwischen einem Löser und FreeCAD sowohl in der Vor- als auch in der Nachbereitung erfolgt über Textdateien. Das bedeutet, dass theoretisch jeder Löser, der über Textdateien konfiguriert und gesteuert werden kann, mit FreeCAD zusammenarbeiten kann; für diese Kommunikation muss ein geeigneter Parser und Schreiber von Ein- und Ausgabedateien programmiert werden. Im Forum findet sich ein Thema mit Diskussionen und Ankündigungen zu den verschiedenen Lösern:General FEM solvers discussion topic.

Wikipedia listet viele Finite Elemente Softwarepakete auf. Einen Vergleich findest du auf feacompare.com.

Verfügbare Löser in verschiedenen Linux Distributionen

Das FreeCAD-Abhängigkeiten-Repositorium verfolgt die Abhängigkeiten von FreeCAD über viele Linux-Distributionen hinweg. Die Seite FEM.md betrachtet verfügbare quelloffene FEA-Löser, die mit dem Arbeitsbereich FEM verwendet werden können. Die Seite zeigt die Version eines bestimmten Lösers im Repositorium einer bestimmten Linux-Distribution. Diese Information ist nützlich, um zu wissen, ob ein Löser aktuell oder veraltet ist und aktualisiert werden muss.

Die Informationen werden auch im Forum diskutiert: unterstützter und nicht unterstützter Löser.

Löser mit einer Schnittstelle in FreeCAD

Diese Löser sind gut in FreeCAD integriert, was bedeutet, dass es möglich ist, ein Simulationsprojekt von der grafischen Oberfläche und den Schaltflächen im FEM Arbeitsbereich aus zu erstellen und auszuführen.

CalculiX

Dies ist der erste Löser, der für die Arbeit mit dem FEM Arbeitsbereich integriert wurde. CalculiX ist vor allem für statische, thermo-mechanische und modale Analysen konzipiert. Weitere Informationen über diesen Löser findet man unter FEM CalculiX.

Elmer

Der Elmer-Multiphysics-Löser wurde als Google-Summer-of-Code-2017-Projekt in FreeCAD integriert: Hauptwebsite, Gemeinschaftsportal, Code Repositorium, Elmer Integration (GSoC) - Aktivitätsprotokoll ( Forumsthema).

Mystran

Mystran is a structural analysis program that uses the Nastran input file format. It is released under MIT license which means that it's open-source. See main website, code repository and Mystran-FreeCAD-forum (forum topic).

Z88

Der Löser Z88 ist für lineare statische Simulationen mit dem Schwerpunkt auf der Vermittlung der Finite-Elemente-Methode konzipiert. Er war der zweite Solver, der in FreeCAD integriert wurde. Danach wurde die Integration als Projekt des Google Summer of Code 2017 verbessert.

Siehe die Informationen:

Es gibt zwei Versionen, Z88OS ist die quelloffene Version, während Z88Aurora Freeware ist und eine grafische Oberfläche und zusätzliche Lösungsmethoden enthält.

Löser als externe Arbeitsbereiche implementiert

Diese Löser sind nicht in den Arbeitsbereich FEM integriert, d.h. sie benötigen eine separate Schnittstelle, um ein Simulationsprojekt zu erstellen. Dies wird durch Makros oder externe Arbeitsbereiche erreicht.

DualSPHysics

DualSPHysics ist ein Satz von C++ , CUDA und Java Bibliotheken, die die geglättete Teilchen Hydrodynamik verwenden. (SPH) Modell namens SPHysics zur Untersuchung von Phänomenen der freien Oberflächenströmung wie z.B. brechenden Wellen.

DesignSPHysics ist ein in FreeCAD integrierter externer Arbeitsbereich, der eine grafische Benutzeroberfläche für DualSPHysics bietet: Haupt-Website, Code Repositorium, Interessantes Projekt: DesignSPHysics Fluidsimulator (Forumsthema).

DesignSPHysics kann über den Addon-Manager installiert werden.

FastHenry und FasterCap

FastHenry und FasterCap sind von FastFieldSolvers entwickelte Induktivitäts-Widerstands und Kapazitäts Feldlöser: Hauptwebsite, Downloadseite (Binär- und Quellcode), Forum.

Der Arbeitsbereich EM ist ein externer Arbeitsbereich, der als Front-End für diese elektromagnetischen Löser geschaffen wurde. FastHenry, für die 3D magneto-quasistatische Impedanzanalyse, wird vollständig unterstützt, während FasterCap über einige Python-Makros zugänglich ist.

Siehe: ElectroMagnetic Workbench (Hauptforumsthema) , Electromagnetic Workbench - again.. (Forumsthema), FreeCAD for ElectroMagnetics (Forumsthema), code repository for the workbench.

Der Arbeitsbereich EM kann mit dem AddonManager installiert werden.

fcFEM

fcFEM is a finite element solver for structural and mechanical studies, implemented in Python, and which can be run directly from FreeCAD without calling external binary solvers. Therefore, it can be considered FreeCAD's own internal solver.

fcFEM was designed to overcome certain limitations from other solvers, such as CalculiX, in order to perform various structural engineering studies.

Some of the problems that are intended to be overcome by this solver include

Der Autor hält FreeCAD für eine gute Prototyping-Plattform, um verschiedene strukturelle Probleme schnell einzurichten, zu testen und zu visualisieren. Daher ist ein integrierter und dennoch flexibler Löser sehr hilfreich. Siehe fcFEM - FEA from start to finish (Hauptthema des Forums).

fcFEM ist als Python-Bibliothek und Makro verpackt und kann vom GitHub-Projektarchiv heruntergeladen werden. Es wird möglicherweise auch über den AddonManager oder als Teil von FreeCAD selbst verteilt werden.

OpenFoam

OpenFoam ist ein leistungsfähiges Framework für Numerische Strömungsmechanik (engl.: computational fluid dynamics, CFD) Simulation, verteilt als eine Reihe von C++ Bibliotheken.

OpenFoam ist in FreeCAD über zwei externe Arbeitsbereiche verfügbar:

Während Cfd als Vollausstattung für fortgeschrittene Anwender gedacht ist, konzentriert sich CfdOF auf Anwender, die gerade erst in die Welt von CFD und OpenFoam einsteigen.

Für Cfd: Aktualisierung von FreeCAD + OpenFOAM Fluiddynamik-Berechnung (Forumsthema), Fortschritte des Arbeitsbereichs allgemeinen Numerischen Strömungsmechanik (CFD): CfdWorkbench (altes Forumsthema).

Füor CfdOF: Computational Fluid Dynamics (CFD) Arbeitsbereich OpenFOAM verwendend (Forumsthema), Trainingsmaterial.

Beide Arbeitsbereiche können über den Addon-Manager installiert werden, und beide haben einen Platz für Diskussionen im CfdOF / CFD-Unterforum.

Implementation in progress

FEniCS

FEniCS is a computing framework for solving partial differential equations (PDEs), with high-level programming interfaces in Python and C++. It can be used to establish scientific problems in finite element formulations that then can be solved numerically.

Siehe: Hauptwebsite, Fenics as Solver (Forenthema).

FenicsSolver is a simulation platform to deal with multi-body, multi-physics (coupled), multi-scale problems. It hopes to integrate the FEniCS solver into both the FEM Workbench and the Cfd external workbench, so the resulting system functions like a free alternative to Comsol or Moose. FenicsSolver is being developed by the same author of Cfd.

OOFEM

OOFEM is an object-oriented FEM program by the Czech Technical University, for solving mechanical, transport and fluid mechanics problems.

It was mentioned as having some advantages over CalculiX, like interface elements (pre-stressed pre/post-tensioned concrete bridge (forum topic)), and arc-length control for elastic-plastic collapse analysis (FEM - Tubular Connection with Shell Elements (forum topic)).

Preliminary integration into the FEM Workbench has been done. See: OOFem (main forum topic), test request, multiple solvers (forum topic).

Until the solver integration is completed and the new code is merged into the main FreeCAD repository, the required files for using the solver in the FEM Workbench can be downloaded from a forked FreeCAD branch. For an implementation overview have a look at the very clean commit history https://github.com/berndhahnebach/FreeCAD_bhb/commits/femoofem

MBDyn

Solvers not integrated

Die folgenden Löser wurden nicht in FreeCAD integriert, haben jedoch bei der Benutzergemeinschaft auf Interesse gestoßen. Wenn ein Entwickler eine Kommunikationsbrücke für einen bestimmten Solver erstellen möchte, sollte er sich im FEM-Unterforum beraten lassen und Unterstützung einholen.

The following articles may be outdated, but the information they contain may still be useful to understand how to integrate solvers into FreeCAD

ADAPy

Siehe ADAPy und ADA - Assembly for Design & Analysis (Forenthema).

Agros2D and Hermes

Agros2D is a multiplatform graphical program designed for solving different physical problems. Internally it uses the Hermes C++ libraries for the solution of simple and complex time-dependent nonlinear partial differential equation (PDE) systems using a general version of the finite element method (hp-FEM). Main code repository, and tutorials.

Code-Aster and Code-Saturne

Code-Aster ist ein Open-Source-Multiphysik-Löser; zusammen mit dem Vorprozessor Salomé-Meca bilden sie eine Simulationsplattform, die von EDF-GDF, Frankreichs größtem Energieunternehmen, entwickelt wurde. Es war eines der ersten Pakete, dessen Aufnahme in FreeCAD in Betracht gezogen wurde: FreeCAD and Code-Aster/Salome-Meca (Forums-Thema).

Code-Saturne is a free, open-source software developed and released by EDF to solve computational fluid dynamics (CFD).

FElt

FElt is a finite element package to solve linear static and dynamic structural analysis problems. The original code is outdated, so it was forked to a new repository to revive the project and make it compile in a modern system.

In den Foren wurde vorgeschlagen, die Analyse von Stahlbetonrahmen (Balken- und Stützenkonstruktionen) mit 1D-Balkenelementen durchzuführen: Automation in Design (Forums-Thema), Felt in FEM Workbench (Forums-Thema).

Frame3DD

Frame3DD ist ein Softwarepaket für die statische und dynamische Strukturanalyse von 2D- und 3D-Rahmen und Fachwerken, Zu finden im GitHub-Hauptarchiv. Ein vorläufiger Reader für Eingabedateien wurde in den Foren angekündigt: Test read data from Frame3DD file. Allgemeines Thema im FEM-Forum: Frame3DD.

Impact FEM

libMesh

libMesh is a C++ finite element library for the numerical solution of partial differential equations, with a major goal to provide support for adaptive mesh refinement (AMR) computations in parallel: code repository.

Es wurde vorgeschlagen, diese Bibliothek in FreeCAD zu integrieren als Teil des Google Summer of Code Project: GSOC 2019 Configuration Management Project (forum topic).

Modelica

Modelica is a language to model and optimize complex, and interconnected physical systems, for example, mechanical, electrical, thermal, hydraulic, and others. The language itself and its standard libraries are open-source. Some simulation environments based on Modelica, like Catia's Dymola, are proprietary, but there are also free implementations like OpenModelica and JModelica.

Mit FreeCAD wurde Modelica zur Erstellung von Animationen vorgeschlagen, aber im weiteren Sinne könnte es auch im Maschinenbau und in der Gebäudetechnik zur Lösung von Gleichungen und zur Optimierung eines bestimmten Entwurfs eingesetzt werden: Modelica (Forums-Thema).

Das PyFMI-Paket enthält Python-Bindings für die Arbeit mit FMU-Modellen, bei denen es sich um standardisierte Modelle im Binärformat handelt, die von kompatiblen Modelica-Umgebungen wie Dymola, OpenModelica und JModelica erzeugt werden. Es wurde vorgeschlagen, dass diese Bibliothek FreeCAD dabei helfen könnte, eine Verbindung zu einem Modelica system zu erstellen (Forums-Thema).

Mumps

Mumps ist ein generischer Löser für massive Gleichungssysteme, der sich im Allgemeinen mit der Faktorisierung und der Berechnung von spärlichen Matrizen befasst. Es wurde im Forum erwähnt: Test request, multiple solvers (Forums-Thema).

It does not perform finite element analysis directly, but it may be used internally by other packages like Code-Aster.

Nastran

Nastran ist ein Strukturanalyseprogramm, das in den 1970er Jahren von der NASA entwickelt wurde. Moderne Versionen davon sind kommerzielle Produkte und Closed Source; ältere Versionen davon sind jedoch Nastran-93 and Nastran-95 als Open-Source-Software im Jahr 2015 veröffentlicht. Forumsbeitrag: Nastran (Forums-Thema).

There is no technical support for the open-source code, and it is probably difficult to compile in a modern system.

OpenSees

OpenSees ist ein Software-Framework zur Entwicklung von Anwendungen zur Simulation von Bauwerks- und Geotechniksystemen, hauptsächlich im Bereich der Erdbebeningenieurwissenschaften. OpenSees, the Open System for Earthquake Engineering Simulation (Forums-Thema) und Relicensing of OpenSees (Forums-Thema).

PolyFEM

PolyFEM ist eine einfache C++- und Python-Finite-Elemente-Bibliothek. Wir bieten eine breite Palette gängiger partieller Differentialgleichungen, darunter Laplace, Helmholtz, lineare Elastizität, Saint-Venant-Elastizität, Neo-Hooke-Elastizität und Stokes. PolyFEM (Forums-Thema).

Sparselizard

Sparselizard ist eine schnelle, allgemeine, multiphysikalische, p-adaptive Open-Source-C++-Finite-Elemente-Bibliothek, die unter Linux, Mac und Windows läuft. Sie wird zur Entwicklung von Mikrogeräten der nächsten Generation (Ultraschallwandler, Mikrospiegel, Mikroventile, Kammantriebe usw.) verwendet und sorgfältig anhand von analytischen Lösungen, Software von Drittanbietern und Messungen der hergestellten Geräte validiert. Sie scheint vom Team des gmsh-Netzgenerators entwickelt worden zu sein.

SU2

SU2 is a collection of software tools developed in C++ and Python for the solution of partial differential equations (PDE) and PDE-constrained optimization problems on unstructured meshes. It is particularly used in the fields of aerodynamics and computational fluid dynamics (CFD).

Tochnog

Tochnog Professional is a closed-source program to perform geotechnical simulations such as landslides, driving piles, slope stability, and civil engineering calculations (masonry and earthquake response), website.

Tochnog wurde erfolgreich in FreeCAD als Ersatz für CalculiX eingesetzt, obwohl die Testversion in der Anzahl der Elemente, die sie verarbeiten kann, begrenzt ist: Integration of tochnog solver in FreeCAD FEM (Forums-Thema).

XC

XC is a FEA program designed to solve structural problems in civil engineering like real beam shell analysis. Internally it uses the OpenSees libraries: main repository, XC, opensource structural engineering FEM code (forum topic).